// PointLight.h
// Object which holds information for a point light.
//
// Nick Kitten
// 2009

#pragma once

#include "DarkGDK.h"
#include "Object.h"
#include "Utilities.h"

class PointLight : public Object
{
protected:
	Color color;

public:
	PointLight( int id, float x = 0, float y = 0, float z = 0, int r = 100, int g = 100, int b = 100 );
	PointLight( int id, Triple pos, int r = 100, int g = 100, int b = 100 ) { PointLight( id, pos.x, pos.y, pos.z, r, g, b ); }
	PointLight( int id, Triple pos, Color col ) { PointLight( id, pos.x, pos.y, pos.z, col.r, col.g, col.b ); }
	PointLight( int id, Triple pos, DWORD col );
	~PointLight();

	void setPosition( float x, float y, float z );

	void setColor( int r, int g, int b );
	void setColor( Color col ) { setColor( col.r, col.g, col.b ); }
	void setColor( DWORD col );

	Color getColor() const;
};